# 读取数据的三种方式

# 1.从键盘键入数据
# 做数据集
patientID <- c(1,2,3,4)
admdate <- c("10/15/2009", "11/01/2009", "10/21/2009", "10/20/2009")
age <- c(25,34,28,52)
diabets <- c("Type1", "Type2", "Type3", "Type4")
status <- c("Poor", "Improved", "Excellent", "Poor")
data <- data.frame(patientID, admdate, age, diabets, status)
data

# 手动输入数据集，或许是需要插件支持
data2 <- data.frame(patientID=character(0), age=numeric())
data2 <- edit(data2)

# 2.从文件读取数据
# read.table("文件名+后缀 或 文件的绝对路径")
# read.csv("test1.csv")
# read.xlsx("test2.xlsx") 读取excel是需要导入新的包的
# 写入文件为write.table(x,file = "存储地址+创建的文件名")


# 3.从数据库读取数据，以mysql和RMySQL包为例
# install.packages('RMySQL') 安装包，不同的包的api会不同，以简单为主
library(RMySQL)
con <- dbConnect(MySQL(), # 连接数据库
                 user="root",
                 password="123456",
                 host="127.0.0.1",
                 port=3306,
                 dbname="rdb")

# 连接概述
summary(con)

# 列出连接数据库下的所有表
dbListTables(con)

# 因为主要是做数据分析，我这里只写查操作，增删改不会写
# 读取完整表，如果有乱码，提前dbSendQuery去设置编码格式
dbReadTable(con,'city')

# 读取完整表，也可以写详细的sql语句去获取表的部分值（查哪些字段，查前几条都是可以轻松实现的）
dbGetQuery(con,'select * from city')




